package tienda.zapateria.siszap.bl;

import java.util.ArrayList;
import org.rx.cr.bl.BLAbstract;
import org.rx.cr.conf.Config;
import tienda.zapateria.siszap.be.BEUbigeo;
import tienda.zapateria.siszap.da.DAUbigeo;
import tienda.zapateria.siszap.ds.DSUtil;

public class BLUbigeo extends BLAbstract<BEUbigeo> {

    DAUbigeo dao;

    public BLUbigeo(Config c) {
        setDSConeccion(DSUtil._DSConeccion(c));

    }

    @Override
    public int registrar(BEUbigeo tipo) throws Exception {
        dao = new DAUbigeo(getConeccion());
        return dao.registrar(tipo);
    }

    @Override
    public int actualizarRegistro(BEUbigeo tipo) throws Exception {
        dao = new DAUbigeo(getConeccion());
        return dao.actualizarRegistro(tipo);
    }

    @Override
    public int eliminarRegistro(BEUbigeo tipo) throws Exception {
        dao = new DAUbigeo(getConeccion());
        return dao.eliminarRegistro(tipo);
    }

    @Override
    public ArrayList<BEUbigeo> buscarReferencia(String string) throws Exception {
        dao = new DAUbigeo(getConeccion());
        return dao.buscarReferencia(string);
    }

    @Override
    public ArrayList<BEUbigeo> listar() throws Exception {
        dao = new DAUbigeo(getConeccion());
        return dao.listar();
    }

    @Override
    public BEUbigeo buscar(int i) throws Exception {
        dao = new DAUbigeo(getConeccion());
        return dao.buscar(i);
    }

    public ArrayList<BEUbigeo> listarDepartamento() throws Exception {
        dao = new DAUbigeo(getConeccion());
        return dao.listarDepartamento();
    }

    public ArrayList<BEUbigeo> listarProvinciaDepartamento(String departamento) throws Exception {
        dao = new DAUbigeo(getConeccion());
        return dao.listarProvinciaDepartamento(departamento);
    }

    public ArrayList<BEUbigeo> listarDistritoProvinciaDepartamento(String departamento, String provincia) throws Exception {
        dao = new DAUbigeo(getConeccion());
        return dao.listarDistritoProvinciaDepartamento(departamento, provincia);
    }

}
